﻿
namespace Airborne.ScrumPoker.Model.TeamFoundation
{
    /// <summary>
    /// INterface defining the contract for a Team Foundation Workitem
    /// </summary>
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1702:CompoundWordsShouldBeCasedCorrectly", MessageId = "TeamWork", Justification="Word is actually Team - Work Item")]
    public interface ITeamWorkItem
    {
        /// <summary>
        /// Title of the work item
        /// </summary>
        string Title { get; }

        /// <summary>
        /// Priorit of the item
        /// </summary>
        int BusinessPriority { get; }

        /// <summary>
        /// Delivery Order
        /// </summary>
        int DeliveryOrder { get; }

        /// <summary>
        /// Estimated Effort
        /// </summary>
        double? EstimatedEffort { get; set; }

        /// <summary>
        /// Description
        /// </summary>
        string Description { get; set; }

        /// <summary>
        /// Comment
        /// </summary>
        string Comment { get; set; }

        /// <summary>
        /// Saved the workitem.
        /// </summary>
        void Save();
    }
}
